package main
/**
写一个函数，使其可以删除某个链表中给定的（非末尾）节点。传入函数的唯一参数为 要被删除的节点 。
示例 1：

输入：head = [4,5,1,9], node = 5
输出：[4,1,9]
解释：给定你链表中值为5的第二个节点，那么在调用了你的函数之后，该链表应变为 4 -> 1 -> 9.
示例 2：

输入：head = [4,5,1,9], node = 1
输出：[4,5,9]
解释：给定你链表中值为1的第三个节点，那么在调用了你的函数之后，该链表应变为 4 -> 5 -> 9.

提示:
链表至少包含两个节点。
链表中所有节点的值都是唯一的。
给定的节点为非末尾节点并且一定是链表中的一个有效节点。
不要从你的函数中返回任何结果。
 */

 type ListNode struct {
     Val int
     Next *ListNode
}

func deleteNode(node *ListNode) {
	//把当前节点的下一个指向（next）的值转到当前节点，
	//然后再把next的next地址页转移到当前节点，
	//也就是鸠占鹊巢，吃你的东西还要占有你的房子，你就被赶跑了，也就是删除了
	node.Val = node.Next.Val
	node.Next = node.Next.Next
}

func main() {

}